$(function ()
{
    init();
    validate();

    // 初始化页面内容  主要是验证码
    function init()
    {
        $(".input .item:eq(2) .yzm").text(yzm());
    }
    // 随机验证码函数
    function yzm()
    {
        let num = Math.random();
        return num.toString(36).substr(2, 4);
    }
    // 注册校验
    function validate()
    {
        // 手机号验证
        var ureg = /^1[0-9][0-9]{9}$/;
        // 密码验证
        var preg = /^.{6,12}$/;
        // 验证函数
        function valid(reg,index,string)
        {
            // 已经失去焦点
            $(".logincenter .formlogin .input .item").eq(index).removeClass("curfocus");
            // 开始验证
            let data = $(".logincenter .formlogin .input .item").eq(index).find("input").val().trim();
            if (!reg.test(data)) {
                $(".formlogin .input .inputinfo span").text(string)
                    .parent().css({ visibility: "visible" })
                $(".logincenter .formlogin .input .item").eq(index).addClass("curerr");
            }
            else
            {
                $(".formlogin .input .inputinfo").css({ visibility: "hidden" });
            }
        }
        // 触发验证
        function yz()
        {            
            if ($(".formlogin .input .inputinfo").css("visibility") == "visible") {
                console.log(2);
                return 0;
            }
            else
                return 1;
            // 一定要返回一个1  不然返回undefined 和0效果一致
        }
        // 用户名的聚焦颜色变换  和失去焦点验证
        $(".input .item:eq(0)").find("input").on("blur", function ()
        {
             valid(ureg, 0, "★ 手机号格式错误")       
        })
        //  密码的验证
        $(".input .item:eq(1)").find("input").on("blur", function ()
        {
             valid(preg, 1, "★ 密码格式错误 应该为6-12位任意字符")  
        })
        // 验证码的验证
        $(".input .item:eq(2)").find("input").on("blur", function () {
            $(this).parent().removeClass("curfocus");
            let yzm = $(this).val();
            let cury = $(this).next().text().trim();
            console.log(yzm,cury);
            if (!(yzm==cury)) {
                $(".formlogin .input .inputinfo span").text("★ 验证码错误")
                    .parent().css({ visibility: "visible" })
                $(this).parent().addClass("curerr");
            }
            else
            {
                $(".formlogin .input .inputinfo").css({ visibility: "hidden" });
            }
        })
        // 点击时更换验证码
        $(".input .item:eq(2) .yzm").on("click", function ()
        {
            $(this).text(yzm());
        })
        // 获取后端发送的验证码  并进行验证
        $(".input ul .item:last").find("input").on("click", function ()
        {
            console.log(1);
            
            $(this).prop("disabled", "disabled");
            let index = 10;
            $(this).val(`${index}秒后再次发送`)
            $(this).css({ borderColor:"#Ccc",color:"#CCC"})
            let timer = setInterval(()=>
            {
                index--;
                if (index < 0)
                {
                    clearInterval(timer);
                    $(this).prop("disabled", "");
                    $(this).css({ borderColor:"##529bef",color:"#529bef"})
                    $(this).val("获取服务验证码");
                    return;
                }
                $(this).val(`${index}秒后再次发送`)
            }, 1000)
            // 在其他电脑访问时   拿到当前访问的ip
            let ip = location.href.split("//")[1].split("/")[0].split(":")[0];
            $.get("http://"+ip+":8000"+"/register/getyzm", function (res)
            {
                $(".input .item:eq(3)").find("input").off("blur", change);
                layer.alert(`验证码为: ${res}`, {
                    skin: 'layui-layer-lan'
                    , closeBtn: 0
                    , anim: 4 //动画类型
                });
                $.cookie("yzm", res);
                function change()
                {
                    let yzm = $.cookie("yzm");
                    let cury = $(".input .item:eq(3)").find("input").val().trim();
                    console.log(yzm, cury);
                    if (!(yzm==cury)) {
                        $(".formlogin .input .inputinfo span").text("★ 服务验证码错误")
                            .parent().css({ visibility: "visible" })
                        $(this).parent().addClass("curerr");
                    }
                    else
                    {
                        $(".formlogin .input .inputinfo").css({ visibility: "hidden" });
                    }
                }
                $(".input .item:eq(3)").find("input").on("blur", change);
            })
        })
        //  失去焦点时  去掉蓝色边框
        $(".input .item:eq(3)").find("input").on("blur", function () {
            $(this).parent().removeClass("curfocus");
            if (!$(this).val())
            {
                $(".formlogin .input .inputinfo span").text("★ 请输入服务端验证码")
                    .parent().css({ visibility: "visible" })
            }
        })
        // 给所有输入框点击时显示蓝色
        $(".input .item").find("input").on("focus", function ()
        {
            $(this).parent().addClass("curfocus")
            $(this).parent().removeClass("curerr")
        })
        // 点击注册按钮
        $(".remeber .item").eq(1).find("input").on("click", function ()
        {   
            // 触发用户检查
            $(".input .item:eq(0)").find("input").trigger("blur");
            if (!yz())
            {
                console.log(7);
                return 
            }
            // 触发密码检查
            $(".input .item:eq(1)").find("input").trigger("blur");
            if (!yz())
            {
                console.log(2);
                return 
            } 
            // 触发验证码检查
            $(".input .item:eq(2)").find("input").trigger("blur");
            if (!yz())
            {
                console.log(3);
                return 
            }    
            // 服务端验证码
            $(".input .item:eq(3)").find("input").trigger("blur");
            if (!yz())
            {
                console.log(3);
                return 
            }   
            // 检测是否同意了协议  如果全部完成则转到登录界面
            let xieyi = $(".remeber #pwdrem").prop("checked");
            if (!xieyi) {
                  $(".formlogin .input .inputinfo span").text("★ 请先同意用户协议")
                      .parent().css({ visibility: "visible" })
            }
            else
            {
                $(".formlogin .input .inputinfo").css({ visibility: "hidden" });

                // 开始获取注册的用户名 密码
                let uname = $(".input .item:eq(0)").find("input").val();
                let pwd = $(".input .item:eq(1)").find("input").val();
                let user = { uname, pwd };
                let ip = location.href.split("//")[1].split("/")[0].split(":")[0];
                $.post("http://"+ip+":8000"+"/register/registeruser", user, function (data) {
                    
                    if (data == "注册成功")
                    {
                        layer.close(index);
                        layer.msg('注册成功', {
                            icon: 1, time: 2000 //2秒关闭（如果不配置，默认是3秒）
                        }, function()
                            {
                                // 提示后回调
                                location.assign("/乐视项目/html/login.html");
                            })
                    }
                    else {
                        layer.close(index);
                        $(".inputinfo").css("visibility", "visible").text(data); 
                    }
                    
                })
               var index=layer.load(0, {shade: false}); //0代表加载的风格，支持0-2
            }
            
            
        })

        
    }
})